package com.cskaoyan.com.collection.list;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

public class DemoList3 {
    public static void main(String[] args) {

        List<String> list = new ArrayList<>();
        list.add("zs");
        list.add("ls");
        list.add("wu");
        list.add("zl");

        //ListIterator 类型 是Iterator类型的子类型:
        //         hasNext()
        //         next()
        //         remove()
        //         hasPrevious():  判断可不可以向前
        //         previous():  向前遍历
        //         add()
        //         set()
        //         nextIndex()
        //         previousIndex()

        ListIterator<String> iterator = list.listIterator();

        //           zs        ls      wu      zl
        //              标记位


        //       zs        ls      wu      zl
        // 标记位
        String next = iterator.next();
        System.out.println(next);

        String previous = iterator.previous();
        System.out.println(previous);


        // ---------------三个新增加的特殊方法--------
//        ListIterator<E> listIterator() : 可以认为是iterator的增强版
//        返回此列表元素的列表迭代器（按适当顺序）。
//        ListIterator<E> listIterator(int index)
//        返回列表中元素的列表迭代器（按适当顺序），从列表的指定位置开始。
//        List<E> subList(int fromIndex, int toIndex)
//        返回列表中指定的 fromIndex（包括 ）和 toIndex（不包括）之间的部分视图。
//


    }
}
